{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "import warnings\n",
    "from matplotlib import MatplotlibDeprecationWarning\n",
    "warnings.filterwarnings('ignore', category=MatplotlibDeprecationWarning)\n",
    "from sympy import *\n",
    "from einsteinpy.symbolic import MetricTensor, ChristoffelSymbols\n",
    "init_printing()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "lon, lat, r, rho, u, v, w, p, sqrtG, drdeta, omg = symbols('lambda phi r ρ u v w p \\sqrt{G} \\partial_\\eta{r} \\Omega')\n",
    "\n",
    "# ********************************************************************************\n",
    "# This is the only thing we need to specify:\n",
    "A = Matrix([\n",
    "\t[-r * cos(lat) * sin(lon), -r * sin(lat) * cos(lon), cos(lat) * cos(lon)],\n",
    "\t[ r * cos(lat) * cos(lon), -r * sin(lat) * sin(lon), cos(lat) * sin(lon)],\n",
    "\t[                       0,  r * cos(lat)           , sin(lat)           ],\n",
    "])\n",
    "# ********************************************************************************\n",
    "\n",
    "At = transpose(A)\n",
    "iA = A**-1\n",
    "\n",
    "G = simplify(At * A)\n",
    "\n",
    "# Scale factors\n",
    "S = powdenest(Matrix([sqrt(x) for x in G.diagonal()]), force=True)\n",
    "\n",
    "iG = G**-1\n",
    "\n",
    "# sqrtG = simplify(sqrt(det(G)))\n",
    "\n",
    "gamma = simplify(ChristoffelSymbols.from_metric(MetricTensor(G, (lon, lat, r))).tensor())\n",
    "\n",
    "F = sqrtG * Matrix([\n",
    "    [rho * u * u + iG[0,0] * p, rho * u * v + iG[0,1] * p, rho * u * w + iG[0,2] * p],\n",
    "    [rho * v * u + iG[1,0] * p, rho * v * v + iG[1,1] * p, rho * v * w + iG[1,2] * p],\n",
    "    [rho * w * u + iG[2,0] * p, rho * w * v + iG[2,1] * p, rho * w * w + iG[2,2] * p]\n",
    "])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}\\left[\\begin{matrix}0 & - \\tan{\\left(\\phi \\right)} & \\frac{1}{r}\\\\- \\tan{\\left(\\phi \\right)} & 0 & 0\\\\\\frac{1}{r} & 0 & 0\\end{matrix}\\right] & \\left[\\begin{matrix}\\frac{\\sin{\\left(2 \\phi \\right)}}{2} & 0 & 0\\\\0 & 0 & \\frac{1}{r}\\\\0 & \\frac{1}{r} & 0\\end{matrix}\\right] & \\left[\\begin{matrix}- r \\cos^{2}{\\left(\\phi \\right)} & 0 & 0\\\\0 & - r & 0\\\\0 & 0 & 0\\end{matrix}\\right]\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡                             ⎡sin(2⋅\\phi)      ⎤                        ⎤\n",
       "⎢⎡                        1⎤  ⎢───────────  0  0⎥                        ⎥\n",
       "⎢⎢    0       -tan(\\phi)  ─⎥  ⎢     2           ⎥  ⎡      2             ⎤⎥\n",
       "⎢⎢                        r⎥  ⎢                 ⎥  ⎢-r⋅cos (\\phi)  0   0⎥⎥\n",
       "⎢⎢                         ⎥  ⎢                1⎥  ⎢                    ⎥⎥\n",
       "⎢⎢-tan(\\phi)      0       0⎥  ⎢     0       0  ─⎥  ⎢      0        -r  0⎥⎥\n",
       "⎢⎢                         ⎥  ⎢                r⎥  ⎢                    ⎥⎥\n",
       "⎢⎢    1                    ⎥  ⎢                 ⎥  ⎣      0        0   0⎦⎥\n",
       "⎢⎢    ─           0       0⎥  ⎢             1   ⎥                        ⎥\n",
       "⎢⎣    r                    ⎦  ⎢     0       ─  0⎥                        ⎥\n",
       "⎣                             ⎣             r   ⎦                        ⎦"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "gamma"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}\\sqrt{G} \\left(\\frac{p}{r^{2} \\cos^{2}{\\left(\\phi \\right)}} + u^{2} ρ\\right) & \\sqrt{G} u v ρ & \\sqrt{G} u w ρ\\\\\\sqrt{G} u v ρ & \\sqrt{G} \\left(\\frac{p}{r^{2}} + v^{2} ρ\\right) & \\sqrt{G} v w ρ\\\\\\sqrt{G} u w ρ & \\sqrt{G} v w ρ & \\sqrt{G} \\left(p + w^{2} ρ\\right)\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡         ⎛      p          2  ⎞                                           ⎤\n",
       "⎢\\sqrt{G}⋅⎜───────────── + u ⋅ρ⎟     \\sqrt{G}⋅u⋅v⋅ρ       \\sqrt{G}⋅u⋅w⋅ρ   ⎥\n",
       "⎢         ⎜ 2    2             ⎟                                           ⎥\n",
       "⎢         ⎝r ⋅cos (\\phi)       ⎠                                           ⎥\n",
       "⎢                                                                          ⎥\n",
       "⎢                                          ⎛p     2  ⎞                     ⎥\n",
       "⎢        \\sqrt{G}⋅u⋅v⋅ρ           \\sqrt{G}⋅⎜── + v ⋅ρ⎟    \\sqrt{G}⋅v⋅w⋅ρ   ⎥\n",
       "⎢                                          ⎜ 2       ⎟                     ⎥\n",
       "⎢                                          ⎝r        ⎠                     ⎥\n",
       "⎢                                                                          ⎥\n",
       "⎢                                                                ⎛     2  ⎞⎥\n",
       "⎣        \\sqrt{G}⋅u⋅w⋅ρ              \\sqrt{G}⋅v⋅w⋅ρ     \\sqrt{G}⋅⎝p + w ⋅ρ⎠⎦"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "F"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle - 2 \\sqrt{G} u v ρ \\tan{\\left(\\phi \\right)} + \\frac{2 \\sqrt{G} u w ρ}{r}$"
      ],
      "text/plain": [
       "                              2⋅\\sqrt{G}⋅u⋅w⋅ρ\n",
       "-2⋅\\sqrt{G}⋅u⋅v⋅ρ⋅tan(\\phi) + ────────────────\n",
       "                                     r        "
      ]
     },
     "execution_count": 89,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sum(HadamardProduct(Matrix(gamma[0]), F, evaluate=True))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{\\sqrt{G} p \\sin{\\left(2 \\phi \\right)}}{2 r^{2} \\cos^{2}{\\left(\\phi \\right)}} + \\frac{\\sqrt{G} u^{2} ρ \\sin{\\left(2 \\phi \\right)}}{2} + \\frac{2 \\sqrt{G} v w ρ}{r}$"
      ],
      "text/plain": [
       "                                   2                                 \n",
       "\\sqrt{G}⋅p⋅sin(2⋅\\phi)   \\sqrt{G}⋅u ⋅ρ⋅sin(2⋅\\phi)   2⋅\\sqrt{G}⋅v⋅w⋅ρ\n",
       "────────────────────── + ───────────────────────── + ────────────────\n",
       "      2    2                         2                      r        \n",
       "   2⋅r ⋅cos (\\phi)                                                   "
      ]
     },
     "execution_count": 90,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simplify(sum(HadamardProduct(Matrix(gamma[1]), F, evaluate=True)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle - \\frac{\\sqrt{G} \\left(2 p + r^{2} u^{2} ρ \\cos^{2}{\\left(\\phi \\right)} + r^{2} v^{2} ρ\\right)}{r}$"
      ],
      "text/plain": [
       "          ⎛       2  2      2          2  2  ⎞ \n",
       "-\\sqrt{G}⋅⎝2⋅p + r ⋅u ⋅ρ⋅cos (\\phi) + r ⋅v ⋅ρ⎠ \n",
       "───────────────────────────────────────────────\n",
       "                       r                       "
      ]
     },
     "execution_count": 91,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simplify(sum(HadamardProduct(Matrix(gamma[2]), F, evaluate=True)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Omega in absolute Cartesian coordinate system:\n",
    "Omega = Matrix([0, 0, omg])\n",
    "# V is spherical physical wind:\n",
    "V = Matrix([u * r * cos(lat), v * r, w])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}2 \\Omega \\left(- r v \\sin{\\left(\\phi \\right)} + w \\cos{\\left(\\phi \\right)}\\right)\\\\\\Omega r u \\sin{\\left(2 \\phi \\right)}\\\\- 2 \\Omega r u \\cos^{2}{\\left(\\phi \\right)}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡2⋅\\Omega⋅(-r⋅v⋅sin(\\phi) + w⋅cos(\\phi))⎤\n",
       "⎢                                       ⎥\n",
       "⎢        \\Omega⋅r⋅u⋅sin(2⋅\\phi)         ⎥\n",
       "⎢                                       ⎥\n",
       "⎢                        2              ⎥\n",
       "⎣       -2⋅\\Omega⋅r⋅u⋅cos (\\phi)        ⎦"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Coriolis = powdenest(trigsimp(2 * HadamardProduct(iA * Omega, S, evaluate=True).cross(V)), force=True)\n",
    "Coriolis"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{2 \\Omega \\left(- r v \\sin{\\left(\\phi \\right)} + w \\cos{\\left(\\phi \\right)}\\right)}{r \\cos{\\left(\\phi \\right)}}$"
      ],
      "text/plain": [
       "2⋅\\Omega⋅(-r⋅v⋅sin(\\phi) + w⋅cos(\\phi))\n",
       "───────────────────────────────────────\n",
       "              r⋅cos(\\phi)              "
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Coriolis[0] / r / cos(lat)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}0\\\\\\frac{\\Omega \\cos{\\left(\\phi \\right)}}{r}\\\\\\Omega \\sin{\\left(\\phi \\right)}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡       0        ⎤\n",
       "⎢                ⎥\n",
       "⎢\\Omega⋅cos(\\phi)⎥\n",
       "⎢────────────────⎥\n",
       "⎢       r        ⎥\n",
       "⎢                ⎥\n",
       "⎣\\Omega⋅sin(\\phi)⎦"
      ]
     },
     "execution_count": 94,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simplify(iA * Omega)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "import warnings\n",
    "from matplotlib import MatplotlibDeprecationWarning\n",
    "warnings.filterwarnings('ignore', category=MatplotlibDeprecationWarning)\n",
    "from sympy import *\n",
    "from einsteinpy.symbolic import MetricTensor, ChristoffelSymbols\n",
    "init_printing()\n",
    "\n",
    "lon, lat, dlat, a, h, u, v, sqrtG, g, omg = symbols('\\lambda \\phi d\\phi a h u v \\sqrt{G} g \\Omega')\n",
    "\n",
    "# ********************************************************************************\n",
    "# This is the only thing we need to specify:\n",
    "A = Matrix([\n",
    "\t[-a * cos(lat) * sin(lon), -a * sin(lat) * cos(lon) * dlat],\n",
    "\t[ a * cos(lat) * cos(lon), -a * sin(lat) * sin(lon) * dlat],\n",
    "    [                       0,  a * cos(lat)            * dlat]\n",
    "])\n",
    "# ********************************************************************************\n",
    "\n",
    "At = transpose(A)\n",
    "\n",
    "G = simplify(At * A)\n",
    "\n",
    "# Scale factors\n",
    "S = powdenest(Matrix([sqrt(x) for x in G.diagonal()]), force=True)\n",
    "\n",
    "iG = G**-1\n",
    "\n",
    "# sqrtG = simplify(sqrt(det(G)))\n",
    "\n",
    "gamma = simplify(ChristoffelSymbols.from_metric(MetricTensor(G, (lon, lat))).tensor())\n",
    "\n",
    "F = sqrtG * Matrix([\n",
    "    [h * u * u + iG[0,0] * g * h*h / 2, h * u * v + iG[0,1] * g * h*h / 2],\n",
    "    [h * v * u + iG[1,0] * g * h*h / 2, h * v * v + iG[1,1] * g * h*h / 2]\n",
    "])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}- a \\sin{\\left(\\lambda \\right)} \\cos{\\left(\\phi \\right)} & - a d\\phi \\sin{\\left(\\phi \\right)} \\cos{\\left(\\lambda \\right)}\\\\a \\cos{\\left(\\lambda \\right)} \\cos{\\left(\\phi \\right)} & - a d\\phi \\sin{\\left(\\lambda \\right)} \\sin{\\left(\\phi \\right)}\\\\0 & a d\\phi \\cos{\\left(\\phi \\right)}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡-a⋅sin(\\lambda)⋅cos(\\phi)  -a⋅d\\phi⋅sin(\\phi)⋅cos(\\lambda)⎤\n",
       "⎢                                                          ⎥\n",
       "⎢a⋅cos(\\lambda)⋅cos(\\phi)   -a⋅d\\phi⋅sin(\\lambda)⋅sin(\\phi)⎥\n",
       "⎢                                                          ⎥\n",
       "⎣            0                     a⋅d\\phi⋅cos(\\phi)       ⎦"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "A"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}\\frac{1}{a^{2} \\cos^{2}{\\left(\\phi \\right)}} & 0\\\\0 & \\frac{1}{a^{2} d\\phi^{2}}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡      1                 ⎤\n",
       "⎢─────────────      0    ⎥\n",
       "⎢ 2    2                 ⎥\n",
       "⎢a ⋅cos (\\phi)           ⎥\n",
       "⎢                        ⎥\n",
       "⎢                   1    ⎥\n",
       "⎢      0        ─────────⎥\n",
       "⎢                2      2⎥\n",
       "⎣               a ⋅d\\phi ⎦"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "iG"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}\\left[\\begin{matrix}0 & - \\tan{\\left(\\phi \\right)}\\\\- \\tan{\\left(\\phi \\right)} & 0\\end{matrix}\\right] & \\left[\\begin{matrix}\\frac{\\sin{\\left(2 \\phi \\right)}}{2 d\\phi^{2}} & 0\\\\0 & 0\\end{matrix}\\right]\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡                          ⎡sin(2⋅\\phi)   ⎤⎤\n",
       "⎢                          ⎢───────────  0⎥⎥\n",
       "⎢⎡    0       -tan(\\phi)⎤  ⎢         2    ⎥⎥\n",
       "⎢⎢                      ⎥  ⎢  2⋅d\\phi     ⎥⎥\n",
       "⎢⎣-tan(\\phi)      0     ⎦  ⎢              ⎥⎥\n",
       "⎣                          ⎣     0       0⎦⎦"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "gamma"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}\\sqrt{G} \\left(h u^{2} + \\frac{g h^{2}}{2 a^{2} \\cos^{2}{\\left(\\phi \\right)}}\\right) & \\sqrt{G} h u v\\\\\\sqrt{G} h u v & \\sqrt{G} \\left(h v^{2} + \\frac{g h^{2}}{2 a^{2} d\\phi^{2}}\\right)\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡         ⎛                2     ⎞                               ⎤\n",
       "⎢         ⎜   2         g⋅h      ⎟                               ⎥\n",
       "⎢\\sqrt{G}⋅⎜h⋅u  + ───────────────⎟         \\sqrt{G}⋅h⋅u⋅v        ⎥\n",
       "⎢         ⎜          2    2      ⎟                               ⎥\n",
       "⎢         ⎝       2⋅a ⋅cos (\\phi)⎠                               ⎥\n",
       "⎢                                                                ⎥\n",
       "⎢                                            ⎛              2   ⎞⎥\n",
       "⎢                                            ⎜   2       g⋅h    ⎟⎥\n",
       "⎢         \\sqrt{G}⋅h⋅u⋅v            \\sqrt{G}⋅⎜h⋅v  + ───────────⎟⎥\n",
       "⎢                                            ⎜          2      2⎟⎥\n",
       "⎣                                            ⎝       2⋅a ⋅d\\phi ⎠⎦"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "F"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle - 2 \\sqrt{G} h u v \\tan{\\left(\\phi \\right)}$"
      ],
      "text/plain": [
       "-2⋅\\sqrt{G}⋅h⋅u⋅v⋅tan(\\phi)"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sum(HadamardProduct(Matrix(gamma[0]), F, evaluate=True))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\frac{\\sqrt{G} h \\left(2 a^{2} u^{2} \\sin{\\left(\\phi \\right)} \\cos{\\left(\\phi \\right)} + g h \\tan{\\left(\\phi \\right)}\\right)}{2 a^{2} d\\phi^{2}}$"
      ],
      "text/plain": [
       "           ⎛   2  2                                    ⎞\n",
       "\\sqrt{G}⋅h⋅⎝2⋅a ⋅u ⋅sin(\\phi)⋅cos(\\phi) + g⋅h⋅tan(\\phi)⎠\n",
       "────────────────────────────────────────────────────────\n",
       "                         2      2                       \n",
       "                      2⋅a ⋅d\\phi                        "
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "simplify(sum(HadamardProduct(Matrix(gamma[1]), F, evaluate=True)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 立方球"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "a, alpha, beta, x, y, sigma = symbols('a alpha beta x y sigma')\n",
    "\n",
    "lat = atan(cos(alpha) * tan(beta))\n",
    "\n",
    "dlatdalpha = simplify(diff(lat, alpha).subs(alpha, atan(x / a)).subs(beta, atan(y / a))).subs(x**2 + y**2 + a**2, sigma**2)\n",
    "dlatdbeta  = simplify(diff(lat, beta ).subs(alpha, atan(x / a)).subs(beta, atan(y / a))).subs(x**2 + y**2 + a**2, sigma**2)\n",
    "\n",
    "lon = alpha\n",
    "\n",
    "dlondalpha = simplify(diff(lon, alpha).subs(alpha, atan(x / a)).subs(beta, atan(y / a))).subs(x**2 + y**2 + a**2, sigma**2)\n",
    "dlondbeta  = simplify(diff(lon, beta ).subs(alpha, atan(x / a)).subs(beta, atan(y / a))).subs(x**2 + y**2 + a**2, sigma**2)\n",
    "\n",
    "A = Matrix([\n",
    "    [dlondalpha, dlondbeta],\n",
    "    [dlatdalpha, dlatdbeta]\n",
    "])\n",
    "\n",
    "iA = simplify(A**-1)\n",
    "\n",
    "G = simplify(transpose(A) * A)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "tags": []
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}1 & 0\\\\- \\frac{x y \\sqrt{1 + \\frac{x^{2}}{a^{2}}}}{\\sigma^{2}} & \\frac{\\sqrt{\\frac{a^{2} + x^{2}}{a^{2}}} \\left(a^{2} + y^{2}\\right)}{\\sigma^{2}}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡         1                        0            ⎤\n",
       "⎢                                               ⎥\n",
       "⎢           ________         _________          ⎥\n",
       "⎢          ╱      2         ╱  2    2           ⎥\n",
       "⎢         ╱      x         ╱  a  + x   ⎛ 2    2⎞⎥\n",
       "⎢-x⋅y⋅   ╱   1 + ──       ╱   ─────── ⋅⎝a  + y ⎠⎥\n",
       "⎢       ╱         2      ╱        2             ⎥\n",
       "⎢     ╲╱         a     ╲╱        a              ⎥\n",
       "⎢────────────────────  ─────────────────────────⎥\n",
       "⎢          2                        2           ⎥\n",
       "⎣         σ                        σ            ⎦"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "A"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}1 & 0\\\\\\frac{x y}{y^{2} + 1} & \\frac{\\sigma^{2}}{\\sqrt{x^{2} + 1} \\left(y^{2} + 1\\right)}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡  1              0          ⎤\n",
       "⎢                            ⎥\n",
       "⎢                  2         ⎥\n",
       "⎢ x⋅y             σ          ⎥\n",
       "⎢──────  ────────────────────⎥\n",
       "⎢ 2         ________         ⎥\n",
       "⎢y  + 1    ╱  2      ⎛ 2    ⎞⎥\n",
       "⎣        ╲╱  x  + 1 ⋅⎝y  + 1⎠⎦"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "iA"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}\\frac{\\sigma^{4} + x^{2} y^{2} \\left(x^{2} + 1\\right)}{\\sigma^{4}} & - \\frac{x y \\left(x^{2} + 1\\right) \\left(y^{2} + 1\\right)}{\\sigma^{4}}\\\\- \\frac{x y \\left(x^{2} + 1\\right) \\left(y^{2} + 1\\right)}{\\sigma^{4}} & \\frac{\\left(x^{2} + 1\\right) \\left(y^{2} + 1\\right)^{2}}{\\sigma^{4}}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡   4    2  2 ⎛ 2    ⎞         ⎛ 2    ⎞ ⎛ 2    ⎞ ⎤\n",
       "⎢  σ  + x ⋅y ⋅⎝x  + 1⎠    -x⋅y⋅⎝x  + 1⎠⋅⎝y  + 1⎠ ⎥\n",
       "⎢  ───────────────────    ───────────────────────⎥\n",
       "⎢            4                        4          ⎥\n",
       "⎢           σ                        σ           ⎥\n",
       "⎢                                                ⎥\n",
       "⎢                                            2   ⎥\n",
       "⎢     ⎛ 2    ⎞ ⎛ 2    ⎞     ⎛ 2    ⎞ ⎛ 2    ⎞    ⎥\n",
       "⎢-x⋅y⋅⎝x  + 1⎠⋅⎝y  + 1⎠     ⎝x  + 1⎠⋅⎝y  + 1⎠    ⎥\n",
       "⎢───────────────────────    ──────────────────   ⎥\n",
       "⎢            4                       4           ⎥\n",
       "⎣           σ                       σ            ⎦"
      ]
     },
     "execution_count": 60,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "G"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle \\left[\\begin{matrix}1 + \\frac{x^{2} y^{2}}{\\sigma^{4}} + \\frac{x^{4} y^{2}}{a^{2} \\sigma^{4}} & - \\frac{x y \\left(a^{2} + x^{2}\\right) \\left(a^{2} + y^{2}\\right)}{a^{2} \\sigma^{4}}\\\\- \\frac{x y \\left(a^{2} + x^{2}\\right) \\left(a^{2} + y^{2}\\right)}{a^{2} \\sigma^{4}} & \\frac{\\left(a^{2} + x^{2}\\right) \\left(a^{2} + y^{2}\\right)^{2}}{a^{2} \\sigma^{4}}\\end{matrix}\\right]$"
      ],
      "text/plain": [
       "⎡         2  2    4  2           ⎛ 2    2⎞ ⎛ 2    2⎞ ⎤\n",
       "⎢        x ⋅y    x ⋅y       -x⋅y⋅⎝a  + x ⎠⋅⎝a  + y ⎠ ⎥\n",
       "⎢    1 + ───── + ─────      ─────────────────────────⎥\n",
       "⎢           4     2  4                 2  4          ⎥\n",
       "⎢          σ     a ⋅σ                 a ⋅σ           ⎥\n",
       "⎢                                                    ⎥\n",
       "⎢                                                2   ⎥\n",
       "⎢     ⎛ 2    2⎞ ⎛ 2    2⎞     ⎛ 2    2⎞ ⎛ 2    2⎞    ⎥\n",
       "⎢-x⋅y⋅⎝a  + x ⎠⋅⎝a  + y ⎠     ⎝a  + x ⎠⋅⎝a  + y ⎠    ⎥\n",
       "⎢─────────────────────────    ────────────────────   ⎥\n",
       "⎢           2  4                      2  4           ⎥\n",
       "⎣          a ⋅σ                      a ⋅σ            ⎦"
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "G"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$\\displaystyle - \\frac{x y \\sqrt{1 + \\frac{x^{2}}{a^{2}}}}{\\sigma^{2}}$"
      ],
      "text/plain": [
       "           ________ \n",
       "          ╱      2  \n",
       "         ╱      x   \n",
       "-x⋅y⋅   ╱   1 + ──  \n",
       "       ╱         2  \n",
       "     ╲╱         a   \n",
       "────────────────────\n",
       "          2         \n",
       "         σ          "
      ]
     },
     "execution_count": 64,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dlatdalpha"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.5"
  },
  "latex_envs": {
   "LaTeX_envs_menu_present": true,
   "autoclose": false,
   "autocomplete": true,
   "bibliofile": "biblio.bib",
   "cite_by": "apalike",
   "current_citInitial": 1,
   "eqLabelWithNumbers": true,
   "eqNumInitial": 1,
   "hotkeys": {
    "equation": "Ctrl-E",
    "itemize": "Ctrl-I"
   },
   "labels_anchors": false,
   "latex_user_defs": false,
   "report_style_numbering": false,
   "user_envs_cfg": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
